// pages/register/register.js
Page({
  data: {
    username: '',
    account: '',
    password: '',
    confirmPassword: '',
    userType: ''
  },

  // 输入处理
  onInput(e) {
    const field = e.currentTarget.dataset.field;
    this.setData({
      [field]: e.detail.value
    });
  },

  // 注册提交
  onRegister() {
    const { username, account, password, confirmPassword, userType } = this.data;
    
    // 表单验证
    if (!username || !account || !password || !confirmPassword || !userType) {
      wx.showToast({
        title: '所有字段都必须填写',
        icon: 'none'
      });
      return;
    }
    
    if (password !== confirmPassword) {
      wx.showToast({
        title: '两次密码输入不一致',
        icon: 'none'
      });
      return;
    }
    
    if (!/^1[3-9]\d{9}$/.test(account)) {
      wx.showToast({
        title: '请输入正确的手机号',
        icon: 'none'
      });
      return;
    }
    
    if (userType !== '普通用户' && userType !== '管理员') {
      wx.showToast({
        title: '用户类型必须是"普通用户"或"管理员"',
        icon: 'none'
      });
      return;
    }

    // 调用云函数注册
    wx.showLoading({
      title: '注册中...',
    });
    
    wx.cloud.callFunction({
      name: 'accountRegister',
      data: {
        username,
        account,
        password,
        userType
      },
      success: (res) => {
        wx.hideLoading();
        if (res.result.success) {
          wx.showToast({
            title: '注册成功',
            icon: 'success'
          });
          setTimeout(() => {
            wx.navigateBack(); // 返回登录页
          }, 1500);
        } else {
          wx.showToast({
            title: res.result.message || '注册失败',
            icon: 'none'
          });
        }
      },
      fail: (err) => {
        wx.hideLoading();
        wx.showToast({
          title: '网络错误，请重试',
          icon: 'none'
        });
        console.error('云函数调用失败:', err);
      }
    });
  }
});